<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>02.组件的模板注意事项</title>
  </head>
  <body>
    <div id="app">
      <h1>{{msg}}</h1>
      <!-- 由于HTML忽略大小写的，所以这里要改成短横线 -->
      <my-h1></my-h1>
    </div>

    <script src="../vue.js"></script>
    <script>
      // 组件名称定义时使用大驼峰
      Vue.component('MyH1', {
        // 两点：
        // 组件的模板必须只能包含一个确切的根元素，否则模板编译失败
        // 每个组件模板内部的数据都是封闭独立的，外部拿不到组件内部的数据，组件内部也拿不到外部的数据
        template: `
          <div style="color: red; font-size: 28px;">
            {{ msg }}
          </div>
        `,
        data() {
          return {
            msg: '哈哈',
          };
        },
      });

      new Vue({
        el: '#app',
        data: {
          msg: 'hehe',
        },
      });
    </script>
  </body>
</html>
